Telegram Group Search
Самые догадливые, пишите ответ в комментах 👇

Небольшая подсказка — это термин относится к AI или DS.

Прячем ответы под спойлер, чтобы не спалить остальным.

Библиотека дата-сайентиста #междусобойчик
🆕 Свежие новости из мира AI и Data Science

🔥 Модели и релизы:
OpenAI: GPT‑4.1, 4.1 Mini и 4.1 Nano — обновление линейки с новыми уровнями производительности и масштабируемости
OpenAI выпускает o3, o4-mini и Codex CLI — улучшенный Codex и новые возможности CLI для разработчиков
Mistral запускает Classifier Factory — простой способ обучать кастомные классификаторы на своих данных
Gemini 2.5 Flash — быстрая и дешёвая модель с апгрейдом reasoning-доступна в превью
Google Firebase Studio — облачная платформа для создания AI-приложений на базе Gemini
Яндекс запускает reasoning-модель — новая архитектура с несколькими этапами дообучения и open-source ускорителем YaFSDP

🧠 Исследования, статьи и бенчмарки:
Wikipedia для ИИ-разработчиков — теперь в формате датасета на Kaggle: структурированные статьи, summary, инфобоксы
Три икса в PyTorch — новый подход к работе с большими свертками для масштабного обучения
Как организовать ML-проект — от структуры до примеров использования
Ускорить Pandas в 60 раз — проверяем лайфхаки из интернета

🎙 Интервью, подкасты и видео:
TED 2025: Сэм Альтман — о росте OpenAI, нагрузках на инфраструктуру и вызовах для общества
Новый выпуск подкаста «Деплой» — Антон Полднев из Яндекса делится опытом в рекламе, ИИ и метриках

Библиотека дата-сайентиста #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 Завтра запускаем ML-ракету: последние места на борту

Уже завтра, 21 апреля, состоится наш воркшоп «Математика машинного обучения на практике», где теория ML превращается в практические навыки.

Что вас ждет:
📍 Работа с реальными данными — табличные датасеты и изображения
📍 Снижение размерности через PCA — научитесь отделять важное от второстепенного
📍 Обучение моделей — Random Forest и градиентный бустинг в действии
📍 Разбор метрик и гиперпараметров — как настроить модель на максимальную эффективность
📍 Написание кода на Python — прямо как реальных проектах
📍 Персональный code review от эксперта — бесценный фидбек для вашего роста
📍 Доступ в закрытый чат участников — нетворкинг и обмен опытом

Кто проводит воркшоп:

Мария Горденко — инженер-программист, старший преподаватель НИУ ВШЭ и Proglib Academy, руководитель магистратуры от ГК Самолет и Альфа-Банка.

Стоимость участия: 3990₽
Когда: завтра, 21 апреля

👉 Забронировать место на воркшопе: https://proglib.io/w/0eb27019
Please open Telegram to view this post
VIEW IN TELEGRAM
🟡 scikit-learn, UMAP и HDBSCAN теперь работают на GPU — без единой строчки изменений в коде

Команда cuML (NVIDIA) представила новый режим ускорения, который позволяет запускать код с scikit-learn, umap-learn и hdbscan на GPU без изменений. Просто импортируйте cuml.accel, и всё — можно работать с Jupyter, скриптами или Colab.

Это тот же «zero-code-change» подход, что и с cudf.pandas: привычные API, ускорение под капотом.

✔️ Сейчас это бета-версия: основное работает, ускорение впечатляющее, мелкие шероховатости — в процессе доработки.

✔️ Как это работает:
— Совместимые модели подменяются на GPU-эквиваленты автоматически
— Если что-то не поддерживается — плавный откат на CPU
— Включён CUDA Unified Memory: можно не думать о размере данных (если не очень большие)

Пример:
# train_rfc.py
#%load_ext cuml.accel # Uncomment this if you're running in a Jupyter notebook
from sklearn.datasets import make_classification
from sklearn.model_selection import train_test_split
from sklearn.ensemble import RandomForestClassifier

# Generate a large dataset
X, y = make_classification(n_samples=500000, n_features=100, random_state=0)
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=0)

# Set n_jobs=-1 to take full advantage of CPU parallelism in native scikit-learn.
# This parameter is ignored when running with cuml.accel since the code already
# runs in parallel on the GPU!
rf = RandomForestClassifier(n_estimators=100, random_state=0, n_jobs=-1)
rf.fit(X_train, y_train)


Запуск:
📍 python train.py — на CPU
📍 python -m cuml.accel train.py — на GPU
📍 В Jupyter: %load_ext cuml.accel

Пример ускорения:
📍 Random Forest — ×25
📍 Linear Regression — ×52
📍 t-SNE — ×50
📍 UMAP — ×60
📍 HDBSCAN — ×175

✔️ Чем больше датасет — тем выше ускорение. Но не забывайте: при нехватке GPU-памяти может быть замедление из-за подкачки.

🔗 Документация: https://clc.to/4VVaKg

Библиотека дата-сайентиста #свежак
Please open Telegram to view this post
VIEW IN TELEGRAM
👨‍💻 Топ-вакансий для дата-сайентистов за неделю

Junior HFT Quant Trader / Data Scientist Orion Systematic — от 200 000 до 300 000 ₽, гибрид

Senior Data Engineer — от 5 500 до 6 500 €, офис (Лимасол + Помощь с переездом)

ML Engineer/Data Science — до 350 000 ₽, гибрид (Москва)

Разработчик ML-инфраструктуры (Алиса) — от 250 000 до 450 000 ₽, гибрид (Москва, Санкт-Петербург)

Senior Data Scientist — от 4 000 $, удалёнка (Москва, Санкт-Петербург)

➡️ Еще больше топовых вакансий — в нашем канале Data jobs

Библиотека дата-сайентиста
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
How To: кластеризовать данные с помощью GMM

Gaussian Mixture Models (GMM) — это мощный инструмент для тех случаев, когда данные сложно разбить на чёткие кластеры. Вместо привязки к одному кластеру, GMM работает с вероятностями, что особенно полезно при перекрывающихся группах.

В отличие от жёсткой кластеризации (например, KMeans), GMM:
— Строит пробабилистическую модель: каждое наблюдение принадлежит к каждому кластеру с определённой вероятностью
— Подходит для кластеров разного размера и формы
— Работает даже при перекрывающихся распределениях

🌸 Как использовать GMM

GMM моделирует данные как смесь нескольких нормальных распределений. Алгоритм использует Expectation-Maximization (EM):
1. E-шаг: оценивает вероятность принадлежности каждой точки к каждому кластеру
2. M-шаг: обновляет параметры (среднее, ковариацию) каждого распределения на основе оценок

— R: пакет mclust с визуализацией и автоматическим выбором модели
— Python: sklearn.mixture.GaussianMixture, pgmpy, pomegranate

1️⃣ Импортируйте модель
from sklearn.mixture import GaussianMixture


2️⃣ Обучите модель
gmm = GaussianMixture(n_components=3)
gmm.fit(X)


3️⃣ Получите метки и вероятности
labels = gmm.predict(X)
probs = gmm.predict_proba(X)


4️⃣ Оцените модель через AIC/BIC
gmm.bic(X), gmm.aic(X)


🌸 Преимущества:
— Мягкая кластеризация: каждая точка — не только метка, но и вероятность
— Гибкость в формах и плотностях кластеров
— Можно использовать для density estimation и анализов аномалий

🌸 Недостатки:
— Нужно заранее задавать число кластеров
— Могут возникать проблемы с инициализацией (зависимость от начальных условий)
— Предполагается, что компоненты — именно гауссовы, что не всегда так

🌸 Где применяют GMM:
— Детекция аномалий (особенно в кибербезопасности)
— Сегментация изображений
— Обработка речи и звука
— Финансовое моделирование и risk scoring
— Понимание скрытых закономерностей в данных пользователей

🌸 Визуализация — это пример того, как несколько гауссиан могут описать сложную плотность данных.

Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
Когда сроки горят, а разработчиков не хватает

Нехватка квалифицированных разработчиков, срывы дедлайнов и перегруз команды — эти проблемы знакомы большинству IT-руководителей. В условиях растущей конкуренции найти баланс между качеством реализации, сроками и бюджетом становится всё сложнее, особенно когда проект требует редких компетенций или быстрого масштабирования.

Решение проблемы — задействовать дополнительные ресурсы на аутсорсе или аутстаффе. Например, обратиться в Proglib. Да-да, мы запустили свою студию веб-разработки!

Что мы предлагаем:

• Опытные специалисты для аутстаффа (frontend, backend, DevOps, UI/UX, PM, BA) 

• Полноценная разработка проектов под ключ 

• Гибкое масштабирование команды под потребности клиента 

• Прозрачная коммуникация и регулярная отчетность

Для каждого проекта формируется индивидуальная команда, исходя из конкретных потребностей заказчика.

Заполните форму, чтобы ускорить свою разработку 👉 https://forms.yandex.ru/u/67e548a4eb614622efa0bcb2/
💻 Как ускорить выполнение запросов к базе данных в Django

Когда Django-запросы вытягивают из базы больше данных, чем нужно, это тормозит работу приложения. Чтобы ускорить выполнение и уменьшить нагрузку, можно использовать методы:

〰️ defer() — откладывает загрузку указанных полей до их фактического использования
〰️ only() — загружает только указанные поля, остальные — по запросу
〰️ exclude() — фильтрует объекты, исключая ненужные

В статье — практические примеры на базе веб-приложения для агентства недвижимости: как применять эти методы, чтобы получать только нужные данные и ускорять запросы.

🔗 Подробнее в статье: https://proglib.io/sh/2vagPRorTU

Библиотека питониста
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как понять, что нейросеть переобучилась — без доступа к данным

С помощью weightwatcher — open-source библиотеки на Python — можно проанализировать обученные модели глубокого обучения и выявить:
🎌 переобучение
🎌 переусложнённые слои
🎌 другие потенциальные проблемы

И всё это без тренировочных или тестовых данных — анализ идёт напрямую по весам модели.

Полезный инструмент для аудита, особенно если доступ к данным ограничен.

Пример использования weightwatcher для анализа модели:
import weightwatcher as ww
import torchvision.models as models

# Загружаем предобученную модель
model = models.vgg19_bn(pretrained=True)

# Запускаем анализ
watcher = ww.WeightWatcher(model=model)
details = watcher.analyze()

# Получаем краткое резюме
summary = watcher.get_summary(details)


🔗 Ссылка на репозиторий: https://clc.to/ih8VVw

Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
💡 Что посмотреть: топ-3 курса для дата-сайентистов

1️⃣ Numpy For Machine Learning — освоение основ работы с массивами и математическими операциями в Python для анализа данных.

2️⃣ Scikit-Learn Tutorials - Master Machine Learning — подробное руководство по машинному обучению с использованием одного из самых популярных Python-библиотек.

3️⃣ Pandas For Machine Learning — курс по обработке и анализу данных с помощью Pandas, ключевого инструмента для работы с данными.

Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
📈 Как «ленивая разработка» захватывает IT-рынок

Пока мы выстраиваем архитектуру, пишем тесты и спорим о лучших практиках, рынок всё активнее обживают те, кто вообще не пишет код. Low-code и no-code решения не просто живы — они становятся нормой для бизнеса.

Порог входа минимальный, скорость разработки — бешеная, а заказчику всё равно, написано ли это на Java или накликано в визуальном редакторе. Вопрос: как долго останется актуальной классическая разработка?

🔗 Подробнее в статье

🐸 Библиотека джависта
Please open Telegram to view this post
VIEW IN TELEGRAM
🆕 Свежий релиз PyTorch 2.7

Новая версия PyTorch 2.7 приносит множество улучшений:

— Поддержка GPU-архитектуры NVIDIA Blackwell и сборки с CUDA 12.8 (Linux x86 и arm64)
torch.compile теперь поддерживает Torch Function Modes, можно переопределять любые операции torch.** под себя
— Mega Cache — переносимое end-to-end кэширование для torch
— Обновления FlexAttention

👉 Начать работу с PyTorch 2.7: https://clc.to/hZMHDQ

Библиотека дата-сайентиста #свежак
🛠 Команда дня: ускоряем динамический инференс

▶️ Проблема: у модели меняется размер входов — обычно это мешает трассировке и оптимизации.

Решение: torch.jit.trace умеет кэшировать разные формы входов. TorchScript сохраняет шаблоны и переиспользует их, ускоряя инференс без потерь гибкости.

Пример:
import torch
from torch import nn

# Простая нейросеть
model = nn.Sequential(
nn.Linear(128, 64),
nn.ReLU(),
nn.Linear(64, 10)
)

# Пример входа для трассировки
example_input = torch.randn(1, 128)

# Трассировка модели — включаем TorchScript
traced_model = torch.jit.trace(model, example_input)

# Первый вызов с новым размером — форма кэшируется
output1 = traced_model(torch.randn(32, 128))

# Второй вызов с такой же формой — используется кэш
output2 = traced_model(torch.randn(32, 128))

# Новый батч — снова кэшируется
output3 = traced_model(torch.randn(64, 128))


➡️ Что это даёт:
• Ускорение инференса за счёт shape specialization
• Гибкость — не нужно фиксировать размер входа
• TorchScript автоматически переиспользует кэш при повторении формы

Библиотека дата-сайентиста #буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🧠⚡️👟 Странные, но эффективные лайфхаки для продуктивности

Иногда самые действенные способы повысить продуктивность звучат как полный бред. Но это работает! Пользователи Reddit делятся своими «тупо-звучащими-но-реально-помогающими» секретами, которые помогут тебе наконец-то перестать прокрастинировать и начать делать дела.

ТОП-советы от пользователей Reddit — в нашей статье.

🐸 Библиотека программиста
Please open Telegram to view this post
VIEW IN TELEGRAM
2025/05/30 08:01:32
Back to Top
HTML Embed Code: